/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.catosist.run.application.Util;
import com.catosist.run.services.ResultadoCompraDTO;
import java.util.ArrayList;
import java.util.List;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRField;

/**
 *
 * @author igorov
 */
public class ReporteCompraDataSource implements JRDataSource{
    private List<ResultadoCompraDTO> listaResultados = new ArrayList<ResultadoCompraDTO>();
    private int indiceResultadoActual = -1;

    public Object getFieldValue(JRField jrf) throws JRException {
        Object valor = null;

        if ("anho".equals(jrf.getName())) {
            valor = listaResultados.get(indiceResultadoActual).getAnho();
        } else if ("mes".equals(jrf.getName())) {
            valor = listaResultados.get(indiceResultadoActual).getMes();
        } else if ("sumadeclarada".equals(jrf.getName())) {
            valor = listaResultados.get(indiceResultadoActual).getSumadeclarada();
        } else if ("sumanodeclarada".equals(jrf.getName())) {
            valor = listaResultados.get(indiceResultadoActual).getSumanodeclarada();
        }

        return valor;
    }

    public boolean next() throws JRException {
        return ++indiceResultadoActual < listaResultados.size();
    }

    public void addResultado(ResultadoCompraDTO resultadoCompraDTO) {
        this.listaResultados.add(resultadoCompraDTO);
    }
}
